﻿Public Class OfficerRemember
    Inherits System.Web.UI.Page

    Private dt As DataTable
    Private Property DataSource As Data.DataTable
        Get
            Return dt
        End Get
        Set(ByVal value As Data.DataTable)
            dt = value
        End Set
    End Property

    Private dtDetail As DataTable
    Private Property DataSourceDetail As Data.DataTable
        Get
            Return Me.Session("dtDetail")
        End Get
        Set(ByVal value As Data.DataTable)
            Me.Session("dtDetail") = value
        End Set
    End Property

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        If Not Page.IsPostBack Then
            Me.Session.Remove("dtDetail")

            If Request.QueryString("infoid") <> "" Then
                Dim dt As DataTable = New DataTable
                Dim offinfo As Entity.OfficerInfoItem = New Entity.OfficerInfoItem
                offinfo.officer_id = Request.QueryString("infoid")
                txtOfficerID.Text = Request.QueryString("infoid")
                dt = BL.Officer.GetOfficerInfo(Request.QueryString("infoid"))
                If dt.Rows.Count > 0 Then
                    If Not IsDBNull(dt.Rows(0)("OFFICER_APP_ID")) Then txtOfficerAppID.Text = dt.Rows(0)("OFFICER_APP_ID")
                    If Not IsDBNull(dt.Rows(0)("OFFCIER_APP_TEL")) Then txtOfficerTel.Text = dt.Rows(0)("OFFCIER_APP_TEL")
                    If Not IsDBNull(dt.Rows(0)("OFFICER_FIRSTNAME_THA")) Then txtOfficerNameTH.Text = dt.Rows(0)("OFFICER_FIRSTNAME_THA")
                    If Not IsDBNull(dt.Rows(0)("OFFICER_LASTNAME_THA")) Then txtOfficerLastNameTH.Text = dt.Rows(0)("OFFICER_LASTNAME_THA")

                    GetHist(Request.QueryString("infoid"))
                End If
            End If

        End If
    End Sub

    Protected Sub btnSave_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnSave.Click
        Dim SaveFlag As Boolean = True
        If txtReference.Text.Trim = "" Then
            Me.Master.Alert("เลขที่ใบเสร็จ ห้ามเป็นค่าว่าง\nกรุงณาระบุ เลขที่ใบเสร็จ!")
            Exit Sub
        End If
        If PaymentDate.Text.Trim = "" Then
            Me.Master.Alert("วันที่จ่ายเงิน ห้ามเป็นค่าว่าง\nกรุงณาระบุ วันที่จ่ายเงิน!")
            Exit Sub
        End If
        If RememberDate.Text.Trim = "" Then
            Me.Master.Alert("วันที่ต่ออายุ ห้ามเป็นค่าว่าง\nกรุงณาระบุ วันที่ต่ออายุ!")
            Exit Sub
        End If
        If txtAmount.ToString.Trim = "" Then
            Me.Master.Alert("จำนวนเงิน ห้ามเป็นค่าว่าง\nกรุงณาระบุ จำนวนเงิน!")
            Exit Sub
        End If

        If SaveFlag Then

            Dim info As Entity.OfficerRemember = New Entity.OfficerRemember

            info.officer_id = Convert.ToDecimal(txtOfficerID.Text.Trim)
            info.remember_reference = txtReference.Text.Trim
            info.payment_amount = Convert.ToDecimal(txtAmount.Text.Trim)
            If Common.UtilityDateTime.ConvertDate(Me.PaymentDate.Text).HasValue Then
                info.remember_payment = Common.UtilityDateTime.ConvertDate(Me.PaymentDate.Text).Value.AddYears(-543)
            Else
                Me.Master.Alert("กรุณาระบุวันที่จ่ายเงิน (วว/ดด/ปปปป)")
                Exit Sub
            End If
            If Common.UtilityDateTime.ConvertDate(Me.RememberDate.Text).HasValue Then
                info.remember_date = Common.UtilityDateTime.ConvertDate(Me.RememberDate.Text).Value.AddYears(-543)
            Else
                Me.Master.Alert("กรุณาระบุวันที่ต่ออายุ (วว/ดด/ปปปป)")
                Exit Sub
            End If
            info.record_status = "Y"
            info.create_user_id = GlobalApp.Authen.offcier_id
            info.create_date = Common.UtilityDateTime.ConvertDate(Now.ToString("dd/MM/yyyy", Common.Utility.CulInfo)).Value
            info.upd_user_id = GlobalApp.Authen.offcier_id
            info.upd_date = Common.UtilityDateTime.ConvertDate(Now.ToString("dd/MM/yyyy", Common.Utility.CulInfo)).Value
            If BL.Officer.InsertOfficerRemember(info, txtOfficerID.Text.Trim, GlobalApp.Authen.offcier_id) Then
                GetHist(txtOfficerID.Text.Trim)
                ClearPayment()
                Me.Master.Alert("SUCCESS.\nทำการบันทึกข้อมูล ต่ออายุสมาชิกของนักธุรกิจ สำเร็จ")
            Else
                Me.Master.Alert("FAIL!\nทำการบันทึกข้อมูล ต่ออายุสมาชิกของนักธุรกิจ ไม่สำเร็จ")
            End If
        End If
    End Sub

    Protected Sub btnReset_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnReset.Click
        Me.Session.Remove("dtDetail")
        Me.Response.Redirect("~/OfficerManagement.aspx", False)
    End Sub

    Private Sub Bind(ByVal pageIndex As Integer)
        Me.gvList.DataSource = DataSourceDetail
        Me.gvList.PageIndex = pageIndex
        Me.gvList.DataBind()
    End Sub

    Protected Sub gvList_SelectedIndexChanged(ByVal sender As Object, ByVal e As EventArgs) Handles gvList.SelectedIndexChanged
        Try
            Dim info As Entity.OfficerRemember = New Entity.OfficerRemember
            info.remember_id = Me.gvList.SelectedValue
            info.record_status = "N"
            info.upd_user_id = GlobalApp.Authen.offcier_id
            info.upd_date = Common.UtilityDateTime.ConvertDate(Now.ToString("dd/MM/yyyy", Common.Utility.CulInfo)).Value
            If BL.Officer.UpdateOfficerRemember(info, txtOfficerID.Text.Trim, GlobalApp.Authen.offcier_id) Then
                GetHist(txtOfficerID.Text.Trim)
                Me.Master.Alert("SUCCESS.\nทำการลบข้อมูล ต่ออายุสมาชิกของนักธุรกิจ สำเร็จ")
            Else
                Me.Master.Alert("FAIL!\nทำการลบข้อมูล ต่ออายุสมาชิกของนักธุรกิจ ไม่สำเร็จ")
            End If
        Catch ex As Exception
            Me.Master.Alert("ไม่สามารถดึงข้อมูลที่ท่านต้องการได้")
            Common.LogError.AddLogException(ex)
        End Try
    End Sub

    Private Sub GetHist(ByVal OfficeID As String)
        DataSourceDetail = BL.Officer.GetOfficerRemember(OfficeID)
        Bind(0)
        'If DataSourceDetail.Rows.Count > 0 Then
        '    Bind(0)
        'End If
    End Sub

    Private Sub ClearPayment()
        txtReference.Text = ""
        PaymentDate.Text = ""
        RememberDate.Text = ""
        txtAmount.Text = ""
    End Sub

End Class